--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Commit 5413db18d29cea7bd5991e182b679daca1e7a9e2
Parents : b12860f
Author : Mark Qvist <mark@unsigned.io>
Date : 2024-01-05T19:28:47+01:00
Added own location button to map screen
Changes
Diff
diff --git a/sbapp/main.py b/sbapp/main.py
index a240057d..b1fa45bf 100644
--- a/sbapp/main.py
+++ b/sbapp/main.py
@@ -4094,6 +4094,26 @@ class SidebandApp(MDApp):
self.map_action()
self.map_show(location)
+ def map_own_location_action(self, context_dest):
+ self.sideband.update_telemetry()
+ location = self.sideband.peer_location(self.sideband.lxmf_destination.hash)
+ if not location:
+ self.location_error_dialog = MDDialog(
+ title="No Location",
+ text="Your location is currently unknown. Make sure the relevant telemetry sensors and permissions have been enabled.",
+ buttons=[
+ MDRectangleFlatButton(
+ text="OK",
+ font_size=dp(18),
+ on_release=self.close_location_error_dialog
+ )
+ ],
+ )
+ self.location_error_dialog.open()
+ else:
+ self.map_action()
+ self.map_show(location)
+
def map_display_telemetry(self, sender=None):
self.object_details_action(sender)
diff --git a/sbapp/ui/layouts.py b/sbapp/ui/layouts.py
index b2de6e69..b8f914f2 100644
--- a/sbapp/ui/layouts.py
+++ b/sbapp/ui/layouts.py
@@ -1013,7 +1013,7 @@ MDScreen:
orientation: "vertical"
MDTopAppBar:
- title: "Situation Map"
+ title: "Map"
anchor_title: "left"
elevation: 0
left_action_items:
@@ -1025,6 +1025,7 @@ MDScreen:
['upload-lock', lambda x: root.app.telemetry_send_update(self)], # Send telemetry update
['layers', lambda x: root.app.map_layers_action(self)],
['wrench-cog', lambda x: root.app.map_settings_action(self)],
+ ['crosshairs-gps', lambda x: root.app.map_own_location_action(self)],
['close', lambda x: root.app.close_any_action(self)],
]
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────